import React, { Component } from 'react';

export default class Demo extends Component {
  
    state = {
        count: 0
    }

    add = () => {
        const {count} = this.state

        // 对象式,setState第一种写法
        // this.setState({
        //     count: count+1
        // }, () => {
        //     console.log(this.state.count)
        // })

        // 函数式的setState,,可以默认接收到state和props
        this.setState((state,props)=>{
            return {count:state.count + 1}
        })


        /*
            总结:
                (1) 对象式和函数式语法糖写法
                (2) 都可使用函数回调
            使用原则:
                (1) 如果新状态不依赖原状态,使用对象式,反之使用函数式
        */
    }

    render() {
    return (
        <div>
            <h1>当前求和和为:{this.state.count}</h1>
            <button onClick={this.add}>+1</button>
        </div>
    );
  }
}
